package s_001_Bean_Registered.config.factorybean;


import org.springframework.beans.factory.FactoryBean;
import s_001_Bean_Registered.bean.Color;

/**
 * 创建一个 Spring 定义的 FactoryBean
 */
public class ColorFactoryBean implements FactoryBean<Color> {

    /**
     * 返回一个 Color 对象，这个对象会添加到容器中
     */
    @Override
    public Color getObject() throws Exception {
        System.out.println("ColorFactoryBean...getObject...");
        return new Color();
    }

    @Override
    public Class<?> getObjectType() {
        return Color.class;
    }

    /**
     * true：这个 bean 是单实例，在容器中保存一份；
     * false：多实例，每次获取都会创建一个新的 bean；
     */
    @Override
    public boolean isSingleton() {
        return false;
    }
}